home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2001 May / SGI IRIX Base Documentation 2001 May.iso / usr / share / catman / g_man / cat3 / standard / afunction.z / afunction
Encoding:
Text File  |  1998-10-20  |  5.8 KB  |  133 lines

  1.  
  2.  
  3.  
  4. aaaaffffuuuunnnnccccttttiiiioooonnnn((((3333GGGG))))                                                    aaaaffffuuuunnnnccccttttiiiioooonnnn((((3333GGGG))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      aaaaffffuuuunnnnccccttttiiiioooonnnn - specify alpha test function
  10.  
  11. CCCC SSSSPPPPEEEECCCCIIIIFFFFIIIICCCCAAAATTTTIIIIOOOONNNN
  12.      vvvvooooiiiidddd aaaaffffuuuunnnnccccttttiiiioooonnnn((((rrrreeeeffff,,,, ffffuuuunnnncccc))))
  13.      lllloooonnnngggg rrrreeeeffff,,,, ffffuuuunnnncccc;;;;
  14.  
  15. PPPPAAAARRRRAAAAMMMMEEEETTTTEEEERRRRSSSS
  16.      _r_e_f    expects a reference value with which to compare source alpha at
  17.             each pixel.  This value should be in the range 0 through 255.
  18.  
  19.      _f_u_n_c   is a symbolic constant taken from the list below.  It identifies
  20.             the alpha comparison function:  AAAAFFFF____NNNNEEEEVVVVEEEERRRR, AAAAFFFF____LLLLEEEESSSSSSSS, AAAAFFFF____EEEEQQQQUUUUAAAALLLL,
  21.             AAAAFFFF____LLLLEEEEQQQQUUUUAAAALLLL, AAAAFFFF____GGGGRRRREEEEAAAATTTTEEEERRRR, AAAAFFFF____NNNNOOOOTTTTEEEEQQQQUUUUAAAALLLL, AAAAFFFF____GGGGEEEEQQQQUUUUAAAALLLL, and AAAAFFFF____AAAALLLLWWWWAAAAYYYYSSSS.
  22.             AAAAFFFF____AAAALLLLWWWWAAAAYYYYSSSS is the default.
  23.  
  24. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  25.      aaaaffffuuuunnnnccccttttiiiioooonnnn makes the drawing of pixels conditional on the relationship of
  26.      the incoming alpha value with a reference constant value.  It is
  27.      typically used to avoid updating either the color or the z bitplanes of a
  28.      framebuffer pixel when the incoming pixel is completely transparent.
  29.      Arguments _r_e_f and _f_u_n_c specify the conditions under which the pixel will
  30.      be drawn.  The incoming (source) alpha value is compared against _r_e_f with
  31.      function _f_u_n_c.  This comparison function is specified with the symbolic
  32.      constants:
  33.  
  34.      AAAAFFFF____NNNNEEEEVVVVEEEERRRR       Never pass.
  35.  
  36.      AAAAFFFF____LLLLEEEESSSSSSSS        Pass if alpha is less than _r_e_f.
  37.  
  38.      AAAAFFFF____EEEEQQQQUUUUAAAALLLL       Pass if alpha is equal to _r_e_f.
  39.  
  40.      AAAAFFFF____LLLLEEEEQQQQUUUUAAAALLLL      Pass if alpha is less than or equal to _r_e_f.
  41.  
  42.      AAAAFFFF____GGGGRRRREEEEAAAATTTTEEEERRRR     Pass if alpha is greater than _r_e_f.
  43.  
  44.      AAAAFFFF____GGGGEEEEQQQQUUUUAAAALLLL      Pass if alpha is greater than or equal to _r_e_f.
  45.  
  46.      AAAAFFFF____NNNNOOOOTTTTEEEEQQQQUUUUAAAALLLL    Pass if alpha is not equal to _r_e_f.
  47.  
  48.      AAAAFFFF____AAAALLLLWWWWAAAAYYYYSSSS      Always pass.
  49.  
  50.      If the comparison passes, the incoming pixel is drawn (conditional on
  51.      subsequent other tests like z-buffer).
  52.  
  53.      aaaaffffuuuunnnnccccttttiiiioooonnnn can be called with arguments 0000,,,,AAAAFFFF____NNNNOOOOTTTTEEEEQQQQUUUUAAAALLLL to defeat drawing of
  54.      completely transparent pixels.  This assumes that incoming alpha is
  55.      proportional to pixel coverage, as it is when either ppppooooiiiinnnnttttssssmmmmooooooootttthhhh or
  56.      lllliiiinnnneeeessssmmmmooooooootttthhhh is being used.
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. aaaaffffuuuunnnnccccttttiiiioooonnnn((((3333GGGG))))                                                    aaaaffffuuuunnnnccccttttiiiioooonnnn((((3333GGGG))))
  71.  
  72.  
  73.  
  74.      aaaaffffuuuunnnnccccttttiiiioooonnnn testing follows scan conversion and texture mapping but
  75.      precedes all other pixel tests.  Thus, if the test fails, color, zbuffer
  76.      and stencil contents will not be modified.
  77.  
  78.      aaaaffffuuuunnnnccccttttiiiioooonnnn operates on all pixel writes, including those resulting from
  79.      the scan conversion of points, lines, and polygons, and from pixel write
  80.      and copy operations. aaaaffffuuuunnnnccccttttiiiioooonnnn does not affect screen clear operation,
  81.      however.
  82.  
  83. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  84.      blendfunction
  85.  
  86. NNNNOOOOTTTTEEEESSSS
  87.      IRIS-4D G, GT, and GTX models, and the Personal Iris, do not support
  88.      aaaaffffuuuunnnnccccttttiiiioooonnnn.  Use ggggeeeettttggggddddeeeesssscccc to determine what support is available for
  89.      aaaaffffuuuunnnnccccttttiiiioooonnnn.
  90.  
  91. BBBBUUUUGGGGSSSS
  92.      On IRIS-4D VGX, XS, XS24, XZ, Elan and Extreme models, aaaaffffuuuunnnnccccttttiiiioooonnnn cannot
  93.      be enabled while sssstttteeeennnncccciiiillll is being used.  Also on these models, only
  94.      AAAAFFFF____NNNNOOOOTTTTEEEEQQQQUUUUAAAALLLL with _r_e_f equal to 0 and AAAAFFFF____AAAALLLLWWWWAAAAYYYYSSSS are supported.
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.